home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
LOGIC Apps
/
Logic-APPLE_II_APPS.iso
/
mac
/
LOGIC Apple II 5.25" Library - ProDOS
/
PRO073.dsk
/
CREATE.MY.LIST.bas
< prev
next >
Wrap
BASIC Source File
|
2012-02-16
|
3KB
|
76 lines
10 REM CREATE.MY.LIST
20 PRINT CHR$(4);"PR#3"
30 PRINT CHR$(12); CHR$(18)
40 D$ = CHR$(4)
50 DIM T$(50)
60 X = X +1
70 VTAB (1): POKE 1403,26: PRINT "Create my own Ticket List"
80 VTAB (22): PRINT "==============================================================================="
90 VTAB (2): PRINT "==============================================================================="
100 VTAB (23): POKE 1403,40: CALL -868: PRINT " Type the Ticket Number"
110 VTAB (23): POKE 1403,0: PRINT "TICKET # ";X;
120 POKE 1403,12: PRINT " XX XX XX XX XX XX"
130 VTAB (23): POKE 1403,13: CALL -657
140 A$ = "": FOR Z = 512 TO 767: IF PEEK(Z) < >141 THEN A$ = A$ + CHR$( PEEK(Z) -128): NEXT Z
150 T$(X) = A$
160 FOR SP = 3 TO 15 STEP 3
170 IF ( MID$ (T$(X),SP,1) < >" ") THEN 100
180 NEXT SP
190 FOR SP = 1 TO 18 STEP 3
200 IF ( MID$ (T$(X),SP,2) >"49") THEN 100
210 IF ( MID$ (T$(X),SP,2) <"01") THEN 100
220 FOR S = 1 TO (SP -1) STEP 3: IF SP < >S THEN IF ( MID$ (T$(X),SP,2)) = ( MID$ (T$(X),S,2)) THEN 100: NEXT S
230 IF SP >3 THEN IF ( MID$ (T$(X),SP,2)) = ( MID$ (T$(X),SP -3,2)) THEN 100
240 IF X >1 THEN FOR R = 1 TO X -1: IF T$(X) = T$(R) THEN 100: NEXT R
250 NEXT SP
260 IF LEN(T$(X)) < >17 THEN 100
270 GOSUB 410
280 VTAB (23): POKE 1403,60: PRINT "Press RETURN or ESC";
290 GET ANS$
300 IF ANS$ = CHR$(13) THEN GOSUB 410
310 IF ANS$ = CHR$(13) THEN 60
320 IF ANS$ = CHR$(27) THEN VTAB (23): POKE 1403,45: PRINT "";: CALL -868: PRINT "(C)hange number or (F)inished list";
330 GET AN$
340 IF (AN$ = "C") OR (AN$ = "c") THEN 100
350 IF (AN$ = "F" OR AN$ = "f") THEN 560
360 IF AN$ = CHR$(27) THEN 750
370 GOTO 320
380 IF X = 50 THEN GOSUB 410
390 IF X = 50 THEN 560
400 REM GOTO 6065
410 REM PRINT ON SCREEN
420 FT = 0
430 VTAB (3): POKE 1403,0: PRINT "";
440 FOR D = 1 TO X
450 SP$ = " ": IF D >9 THEN SP$ = ""
460 A = 2:B = 27:C = 52:FT = FT +1
470 IF FT = 1 THEN T = A
480 IF FT = 2 THEN T = B
490 IF FT = 3 THEN T = C
500 IF FT = 3 THEN FT = 0
510 POKE 1403,T: PRINT SP$;"[";D;"]:";
520 PRINT T$(D);
530 IF T = C THEN PRINT
540 NEXT D
550 RETURN
560 REM SAVE TO DISK
570 PRINT D$;"PREFIX/PROGRAM/LISTS"
580 REM VTAB (22): PRINT "==============================================================================="
590 VTAB (23): POKE 1403,0: PRINT "";: CALL -868: PRINT "Give your LIST a GROUP NAME ";: CALL -657
600 A$ = "": FOR Y = 512 TO 767: IF PEEK(Y) < >141 THEN A$ = A$ + CHR$( PEEK(Y) -128): NEXT Y
610 L$ = A$
620 IF ( ASC(L$) <65 OR ASC(L$) >122) THEN 590
630 L$ = L$ +".L649"
640 ONERR GOTO 590
650 PRINT D$;"OPEN";L$
660 VTAB (23): PRINT "Saving ticket numbers ";L$;" on disk"
670 POKE 216,0
680 PRINT D$;"WRITE";L$
690 FOR D = 1 TO 50
700 IF T$(D) = "" THEN T$(D) = "00 00 00 00 00 00"
710 PRINT T$(D)
720 NEXT D
730 PRINT D$;"CLOSE";L$
740 PRINT D$;"PREFIX/PROGRAM"
750 VTAB (23): POKE 1403,0: CALL -868: PRINT "Returning to MENU"
760 PRINT D$;"-MENU"